A Better Random Number Generator for Apple's Floating Point BAS
نویسندگان
چکیده
Random number generators (RNGs) are functions which produce pseudo-random numbers. Usually, the numbers produced are fractions between 0 and 1. Ideally, every fraction a computer language can represent will be as likely to be generated as every other by that language’s RNG, and the order of numbers will be unpredictable to the user. Slightly more formally, the RNG should produce sequences of numbers which, so far as standard statistical tests can tell, behave in the same way as “truly random” number sequences would behave. RNGs are used to simulate imperfectly predictable real life events (computer games use them, for example), to provide test data for input to complex computer programs (often exposing bugs that a series of test inputs missed), to evaluate mathematical functions or solve equations for which no theoretical solution exists, or similarly, to provide estimates of a solution against which a new theoretical solution can be checked. Randomization, or randomly rearranging the order of things, is the basis of a wide class of increasingly popular, very sensitive statistical tests. Randomization of the order of events in experiments is a necessary part of the design of every experiment that we have run. The better the generator, the better the simulation, solution, test, or experimental control.
منابع مشابه
A Fast Chaos-Based Pseudo-Random Bit Generator Using Binary64 Floating-Point Arithmetic
Chaos-based cryptography is widely investigated in recent years, especially in the field of random number generators. The paper describes a novel pseudo-random bit generator (PRBG) based on chaotic logistic maps. Three logistic maps are combined in the algorithmic process, and a block of 32 random bits is produced at each iteration. The binary64 double precision format is used according to the ...
متن کاملUniform Random Rational Number Generation
Classical floating point random numbers fail simple tests when considered as rational numbers. A uniform random number generator based on a linear congruential generator with output in the rational numbers is implemented within the two computer algebra systems Maple 10 and MuPAD Pro 3.1. The empirical tests in Knuth’s suite of tests show no evidence against the hypothesis that the output sample...
متن کاملAn Effective BIST TPG for Variable Precision Floating Point Multiplier
The accuracy of the multiplication depends on the precision of the multiplier. The variable precision floating point multiplier will have more accuracy when compared with the fixed precision multiplier. In this paper a variable precision floating point multiplier is considered. An effective BIST test pattern generator for variable precision floating point multiplier is proposed. A BIST TPG cons...
متن کاملA PRNG specialized in double precision floating point numbers using an affine transition
We propose a pseudorandom number generator specialized to generate double precision floating point numbers. It generates 52-bit pseudorandom patterns supplemented by a constant most significant 12 bits (sign and exponent), so that the concatenated 64 bits represents a floating point number obeying the IEEE 754 format. To keep the constant part, we adopt an affine transition function instead of ...
متن کاملConversion of Mersenne Twister to double-precision floating-point numbers
The 32-bit Mersenne Twister generator MT19937 is a widely used random number generator. To generate numbers with more than 32 bits in bit length, and particularly when converting into 53-bit double-precision floating-point numbers in [0, 1) in the IEEE 754 format, the typical implementation concatenates two successive 32-bit integers and divides them by a power of 2. In this case, the 32-bit MT...
متن کامل